using System;
using System.Data;
using System.Configuration;
using BusinessRules;
using DataAccess;

public partial class SigEjeAccionesZonasGeograficasList : System.Web.UI.Page
{


    public string StrPlnId
    {
        get
        {
            if (ViewState["strPlnId"] != null)
                return ViewState["strPlnId"].ToString();
            return "";
        }
        set { ViewState["strPlnId"] = value; }
    }

    public string StrAccId
    {
        get
        {
            if (ViewState["strAccId"] != null)
                return ViewState["strAccId"].ToString();
            return "";
        }
        set { ViewState["strAccId"] = value; }
    }
    private DataTable SigEjeAccionZonaGeograficaDataTable
    {

        get
        {

            DataTable objTable = null;
            if (Cache[SigEjeAccionZonaGeograficaData.SIG_EJE_ACCION_ZONAGEOGRAFICA_TABLE + Session.SessionID] != null)
                objTable = (DataTable)Cache[SigEjeAccionZonaGeograficaData.SIG_EJE_ACCION_ZONAGEOGRAFICA_TABLE + Session.SessionID];
            return objTable;
        }

        set
        {
            if (value != null)
            {
                Cache.Insert(SigEjeAccionZonaGeograficaData.SIG_EJE_ACCION_ZONAGEOGRAFICA_TABLE + Session.SessionID, value);
            }
        }
    }


    protected void Page_Load(object sender, EventArgs e)
    {


        if (!IsPostBack)
        {
            if (Request.QueryString["AccId"] != "")
            {
                StrAccId = Request.QueryString["AccId"];
            }
            if (Request.QueryString["PlnId"] != "")
            {
                StrPlnId = Request.QueryString["PlnId"];
            }

            if (StrPlnId != "")
            {
                cargarCampos();
                BindDatos();
            }
        }

        if (SigEjeAccionZonaGeograficaDataTable != null)
        {
            gidvSigEjeAccionesZonaGeografica.DataSource = SigEjeAccionZonaGeograficaDataTable.DefaultView;
            gidvSigEjeAccionesZonaGeografica.DataBind();            
        }

    }

    private void cargarCampos()
    {


        try
        {
            SigPlanAccion objSigPlanAccion = new SigPlanAccion(ConfigurationManager.AppSettings["Conn"]);
            if (StrPlnId != "")
            {
                SigPlanAccionData objSigPlanAccionData = objSigPlanAccion.ConsultarPnlId(Convert.ToDecimal(StrPlnId));

                if (objSigPlanAccionData != null)
                {
                    DataRow fila = objSigPlanAccionData.Rows[0];
                    lblDependencia.Text = fila[SigPlanAccionData.DEP_NOMBRE_FIELD].ToString();
                    lblDescripcionRubro.Text = fila[SigPlanAccionData.PLN_NOMBRE_FIELD].ToString();
                }
            }


            SigAccion objSigAccion = new SigAccion(ConfigurationManager.AppSettings["Conn"].ToString());
            if (StrAccId != "")
            {
                SigAccionData objSigAccionData = objSigAccion.ConsultarAccionAccID(StrAccId);


                //---------------------
                //Cargar datos Accion -
                //---------------------
                DataRow filaAccion = objSigAccionData.Rows[0];
                lblAccion.Text = filaAccion[SigAccionData.ACC_DESCRIPCION_FIELD].ToString();
            }

        }
        catch (Exception)
        {

            throw;
        }

    }

    private void BindDatos()
    {
        SigEjeAccionZonaGeografica objSigEjeAccionZonaGeografica = new SigEjeAccionZonaGeografica(ConfigurationManager.AppSettings["Conn"]);
        SigEjeAccionZonaGeograficaData objSigEjeAccionZonaGeograficaData = objSigEjeAccionZonaGeografica.ConsultarSigEjeAccionZonaGeograficaAccID(StrAccId);
        SigEjeAccionZonaGeograficaDataTable = objSigEjeAccionZonaGeograficaData;
        gidvSigEjeAccionesZonaGeografica.DataSource = objSigEjeAccionZonaGeograficaData.DefaultView;
        gidvSigEjeAccionesZonaGeografica.DataBind();
        pnlGridPlanAccion.Visible = objSigEjeAccionZonaGeograficaData.Rows.Count > 0;
    }
    



    #region ContextItems

    private void crearContextItems()
    {
        Context.Items["accId"] = StrAccId;
        Context.Items["plnId"] = StrPlnId;
    }

    private void traerContextItems()
    {
        if (Context.Items["plnId"] != null)
            StrPlnId = Convert.ToString(Context.Items["plnId"]);
        if (Context.Items["accId"] != null)
            StrAccId = Convert.ToString(Context.Items["accId"]);
    }

    #endregion





    protected void btnRegresar_Click(object sender, EventArgs e)
    {
        crearContextItems();
        Server.Transfer("Default.aspx", true);
    }
}
